﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using ServicioWebRest.Areas.Api.Models;

namespace ServicioWebRest.Areas.Api.Controllers
{
    public class PedidosController : Controller
    {

        private PedidoManager pedidoManager;

        public PedidosController()
        {
            pedidoManager = new PedidoManager();
        }

        [HttpGet]
        public JsonResult Parametros(string usu, string tipo)
        {
            return Json(pedidoManager.ObtenerParametros(usu, tipo), JsonRequestBehavior.AllowGet);        
        }


        //POST: [{"ped_id":'1234567891234567891234',"usu_id":'mvaca@primax.com.ec', "loc_id":206375, "latitud":0.264984,"longitud":-0.15484,"ped_fecha_inicio":'5-5-2014',"ped_fecha_fin":'5-5-2014',"deta":[{"cant":1,"pro_id":550029389}]}]
        public JsonResult Pedidos(int? id, string usu, Pedido[] item)
        {
            switch (Request.HttpMethod)
            {
                case "POST":
                    return Json(pedidoManager.InsertarPedido(item));
                    break;                         }

            return Json(new { Error = true, Message = "Operación HTTP desconocida" });
        }


        public JsonResult PedidosNuevos(string usu, string estado, string desde, string hasta)
        {
            switch (Request.HttpMethod)
            {                
                case "GET":
                    return Json(pedidoManager.ObtenerPedido(usu, estado,desde, hasta), JsonRequestBehavior.AllowGet);
                    break;
            }
            return Json(new { Error = true, Message = "Operación HTTP desconocida" });
        }


        //POST: [{"loc_id":3000044,"usuario":'mvaca@primax.com.ec', "fecha_inicio":'5-5-2014', "fecha_fin":'5-5-2014', "razon":1}]

        public JsonResult ResultadosVisita(ResultadoVisita[] item)
        {
            switch (Request.HttpMethod)
            {
                case "POST":
                    return Json(pedidoManager.InsertarRazonVisita(item));
            }
            return Json(new { Error = true, Message = "Operación HTTP desconocida" });
        }
    }
}
